package com.sunelec.utils;

import java.util.Random;

/**
 * id生成策略
 * <p>Title: IDUtils</p>
 * <p>Description: </p>
 * <p>Company: www.itcast.com</p> 
 * @author	郑明利
 * @date	2015年7月22日下午2:32:10
 * @version 1.0
 */
public class IDUtils {

	/**
	 * 随机id生成
	 */
	public static String getId() {
		//取当前时间的长整形值包含毫秒
		long millis = System.currentTimeMillis();
		//long millis = System.nanoTime();
		//加上两位随机数
		Random random = new Random();
		int end2 = random.nextInt(99);
		//如果不足两位前面补0
		String str = millis + String.format("%02d", end2);
		//加上3位随机字符串
		String string="zxcvbnmlkjhgfdsaqwertyuiopQWERTYUIOPASDFGHJKLZXCVBNM_";
		StringBuffer sb1=new StringBuffer();
		StringBuffer sb2=new StringBuffer();
		//长度为几就循环几次
		for(int i=0; i<3; ++i){
			//产生0-52的数字
			int number1=random.nextInt(53);
			int number2=random.nextInt(53);
			//将产生的数字通过length次承载到sb中
			sb1.append(string.charAt(number1));
			sb2.append(string.charAt(number2));
		}
		String str1 = sb1.toString();
		String str2 = sb2.toString();
		String id = str1 + str + str2;

		return id;
	}
}
